
#ifndef WIDGET_FUNCA_SMART_CHAT_H
#define WIDGET_FUNCA_SMART_CHAT_H

#include <QWidget>
#include <QVBoxLayout>
#include <QSpacerItem>
#include <QScrollArea>
#include <QMessageBox>
#include <QLabel>
#include <QScrollBar>
#include "button_chat_send.h"
#include "widget_smart_chat_message.h"
#include "aiservermanager.h"
namespace Ui {
class Widget_funcA_Smart_chat;
}

class Widget_funcA_Smart_chat : public QWidget
{
    Q_OBJECT
    
public:
    explicit Widget_funcA_Smart_chat(QWidget *parent = nullptr);
    ~Widget_funcA_Smart_chat();
    QLabel *messageLabel; // 用于显示消息文本的标签
    void set_Send_Layout(); // 发送消息（用户消息）的布局
    void set_Receive_Layout(); // 接收消息（AI 回复）的布局
    void set_Edit_Text(const QString &text); // 设置消息文本

protected:
    // 消息窗口的布局
    QBoxLayout * Message_layout;
    
    // 间隔器
    QSpacerItem * message_Spacer;
    // 消息
    Widget_smart_chat_message * chat_message;
    
    // 回车事件
    
    
protected slots:
    // 发射按钮按下
    void Slota_Add_Send_Message();
    void onAiResponseReceived(const QString &response);
    void onAiErrorOccurred(const QString &error);
private:
    Ui::Widget_funcA_Smart_chat *ui;
    AiServerManager * manager;
};

#endif // WIDGET_FUNCA_SMART_CHAT_H
